package thinkinginjava.reusing;
//reusing/Car.java
//TIJ4 Chapter Reusing, Exercise 14, page 258
//In Car.java add a service() method to Engine and call this method in main().

class Engine2 {
	public void start() {}
	public void rev() {}
	public void stop() {}
	public void service() { System.out.println("service engine"); }
}

class Wheel {
	public void inflate(int psi) {}
}

class Window {
	public void rollup() {}
	public void rolldown() {}
}

class Door {
	public Window window = new Window();
	public void open() {}
	public void close() {}
}

public class Car {
	public Engine2 engine = new Engine2();
	public Wheel[] wheel = new Wheel[4];
	public Door
		left = new Door(),
		right = new Door(); // 2-door
	public Car() {
		for(int i = 0; i < 4; i++)
			wheel[i] = new Wheel();
	}
	public static void main(String[] args) {
		Car car = new Car();
		car.left.window.rollup();
		car.wheel[0].inflate(72);
		car.engine.service();
	}	
}
